#!/bin/bash

################################################################################
# 脚本名称：get_domain_ip.sh
# 功能描述：
#   本脚本用于域名解析，自动使用以下两种方法测试：
#     1. 使用 host 命令解析域名
#     2. 使用 dig 命令解析域名
#
# 使用方法：
#   ./get_domain_ip.sh [域名...]
#   示例：
#     ./get_domain_ip.sh www.google.com yahoo.com
################################################################################

#########################
# 域名解析方法
#########################

# 方法1：使用 host 命令
get_domain_ip_host() {
    for domain in "$@"; do
        host "$domain" | grep "has address" | awk '{print $1"\t"$4}'
    done
}

# 方法2：使用 dig 命令
get_domain_ip_dig() {
    for domain in "$@"; do
        echo -e "$domain\t$(dig +short "$domain" | tr '\n' ' ')"
    done
}

#########################
# 帮助信息
#########################
usage() {
    echo "用法: $0 [域名...]"
    echo "示例: $0 www.google.com yahoo.com"
}

#########################
# 主函数
#########################
main() {
    if [[ "$1" == "-h" || "$1" == "--help" || $# -eq 0 ]]; then
        usage
        exit 0
    fi

    echo "【域名解析方法1】(host)："
    get_domain_ip_host "$@"
    echo
    echo "【域名解析方法2】(dig)："
    get_domain_ip_dig "$@"
}

main "$@"
